// DataHolder.h: interfaces for the DataHolder class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DATAHOLDER_H__9812F001_5F2D_11D1_93C7_006097737B41__INCLUDED_)
#define AFX_DATAHOLDER_H__9812F001_5F2D_11D1_93C7_006097737B41__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

#include <iostream>
using namespace std;
#include <cstdlib>

#include "SparseArray.h"


class DataHolder  
{	
public:

	DataHolder(int i_N); 
	DataHolder(const DataHolder &X);
	virtual ~DataHolder();

	void Clean();

	int         N;
	double	    *Average;  // intensity
	SparseArray *Hessian;  // absolute hessian value. Hessian is a matrix
                         // which is formed as an array of arrays (which here are
                         // sparse arrays)
};

inline void DataHolder::Clean()
{	for(int n=1;n<=N;n++)	Hessian[n].Clean();	}

#endif // !defined(AFX_DATAHOLDER_H__9812F001_5F2D_11D1_93C7_006097737B41__INCLUDED_)
